扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
pam_cracklib被插入pam栈中(pam,即Pluggable Authentication Modules,可插入认证模块),这样一旦一个用户执行passwd程序,pam_cracklib就会启动,并针对用户所设定的口令强制执行预定的口令规则。比如,如果该口令是一个常见的辞典用词,pam_cracklib会拒绝接受该口令,用户将不得不另外再想一个。
虽然pam_cracklib已经做得相当不错,但还有更好的工具可以选择。其中之一是pam_passwdqc,可以直接取代pam_cracklib在pam栈中的相应位置。pam_passwdqc比pam_cracklib更久经考验;它直接支持口令字,也支持向用户提供建议口令。
pam_passwdqc的配置核心是插入pam配置文件中的一行。一个传统的passwd入口是在/etc/pam.d/passwd(在某些新系统上,则是在/etc/pam.d/system-auth)。该文件可能看起来是这样:
password required pam_cracklib.so retry=3
password sufficient pam_unix.so nullok use_authtok md5 shadow use_first_pass
尽管不是所有的安装盘都提供了pam_passwdqc,部分分发版本比如Openwall GNU/*/Linux,Annvix,SUSE,以及Red Hat还是进行了提供。一旦pam_passwdqc从你的安装盘上安装完毕,或者是从网页上下载安装完毕(使用apt或者smart工具),你可以简单的将上述语句修改为下述这样,从而启用它:
password required pam_passwdqc.so min=disabled,12,8,6,5 max=40
passphrase=3 match=4 similar=deny random=42 enforce=everyone retry=3
password sufficient pam_unix.so nullok use_authtok md5 shadow use_first_pass
pam_passwdqc的主页提供了非常多的选项信息,不过上述这些规则其本质就是:不接受任何单种字符类的口令;对两种字符混合的密码,强制口令最小长度是12位;对口令字强制最小长度是8位;对3种字符混合的密码强制最小长度是6位;4种字符混合的密码强制最小长度是5位。所谓4种字符混合的密码就是由“数字”,“小写字母”,“大写字母”,以及“其它字符”组成(其它字符就是类似“!”、“_”这种)。另外,上述这些规则同时还强制任何口令长度不得超过40位。至于其它选择项,都已经清楚地列在pam_passwdqc的主页上了。
每个选择项可以被自定义,以适应你的环境。其实,上述设置的确没有推荐的默认设置那么严谨,默认设置“min=disabled,24,12,8,7”可以确保所建立的口令非常难以被破解。
pam_passwdqc的使用没什么特殊要求,所以哪怕你的分装版本中并没有提供它的安装包,你也可以使用它的源代码进行安装和编译,应该不会有任何问题。
(责任编辑:陈毅东)
濠碘€冲€归悘澶愬箖閵娾晜濮滈悽顖涚摃閹烩晠宕氶崶鈺傜暠闁诡垰鍘栫花锛勬喆椤ゅ弧濡澘妫楅悡娆撳嫉閳ь剟寮0渚€鐛撻柛婵呮缁楀矂骞庨埀顒勫嫉椤栨瑤绻嗛柟顓у灲缁辨繈鏌囬敐鍕杽閻犱降鍨藉Σ鍕嚊閹跺鈧﹦绱旈幋鐐参楅柡鍫灦閸嬫牗绂掔捄铏规闁哄嫷鍨遍崑宥夋儍閸曨剚浠樺ù锝嗗▕閳ь剚鏌ㄧ欢鐐寸▕鐎b晝顏遍柕鍡嫹